1. Field of Invention
The present invention relates generally to systems and methods for controlling execution of interactive television applications and, more particularly, to systems and methods for determining appropriate time periods in which to offer, begin, and allow execution of such interactive applications.
2. Background of the Invention
Traditionally, the broadcast of television programs has been a one way transmission. A broadcaster would transmit a program which would be received and passively utilized by a viewer. More recently, interactive television has become both possible and popular. Utilizing the ample bandwidth of cable, interactive television applications may be transmitted along with the program material. These interactive applications, which are received and executed by a broadcast receiver, such as a set top decoder, are capable of requesting or otherwise gleaning data from the viewer, and delivering that data back to the broadcaster. Interactive applications have many potential uses, such as allowing a viewer to order a product that is associated with a specific program, conducting a poll, or gathering statistics on the program selection and watching habits of television viewers. Specific interactive applications that are associated with specific television programs greatly enhance the viewing experience, and enable new and useful marketing opportunities as well.
One problem with interactive television as it exists today is the lack of coordination of the offering, starting, and continuing of the execution of interactive applications with the broadcasting of television programs with which the applications are associated. It is often desirable to offer viewers an option to execute an interactive application associated with a specific television program. Such an offer is typically made by presenting an icon on the display, inviting the viewer to enter a control signal in order to execute the interactive application. However, television programs are of fixed lengths. Likewise, interactive applications typically require a minimum amount of time to completely execute. Once the amount of time remaining in a program is not sufficient for the offer and subsequent execution of an associated interactive application, it is no longer desirable for a broadcast receiver to offer the option to execute the interactive application to the viewer. This issue is compounded by the fact that viewers often change channels and tune in to television programs in progress. If a viewer tunes to a program which has an associated interactive television application, simply immediately offering the viewer an option to execute the program will be problematic if insufficient time remains in the program for the execution of the interactive application. For example, an interactive application that allows a viewer to order a product during a commercial may require a minimum of ten seconds to collect data from the viewer. If a viewer tunes in to the channel on which the commercial is being broadcast during the last six seconds of the commercial, there would not be enough time to execute the interactive application.
Offering and executing an interactive applications without sufficient running time in the corresponding broadcast program may result in the continued execution of the interactive application after the broadcast program has ended. This would confuse and frustrate the viewer, and perhaps prevent the execution of another interactive application that is associated with the new program which has begun. On the other hand, often a user will tune to a program in progress where ample time does remain to offer and execute the interactive application. In such a case, it is desirable to offer the application, and execute it if so instructed by the user. Similar issues are presented by starting and continuing execution of interactive applications associated with television broadcast programs in progress.
For example, suppose a viewer tunes to a documentary program concerning travel in Southeast Asia, for which there is an associated interactive application that allows the viewer to order a relevant travel guide. Assume only fifty seconds remains in the television program, and the minimum time needed to offer and execute the interactive application is three minutes. If the interactive application is offered to and selected by the viewer, the broadcast program will end prior to the completion of the execution of the interactive application. A new broadcast program will begin, for example a program concerning sports. The offer and execution of the travel guide interactive application is no longer appropriate for the broadcast program. If the interactive application continues to be offered to the viewer or is started or continues to execute with its associated travel broadcast program no longer present, there would be a mismatch between the interactive application and the broadcast program, typically leading to confusion or frustration on the part of the user. For example, if the viewer is watching the sports program, but the travel guide interactive application is still executing, the viewer will either be frustrated by the presence of the superfluous interactive application over a portion of the screen, or worse yet, order the travel guide mistakenly thinking that it is associated with the sports broadcast program.
The present invention solves the problem of coordinating the offering, starting, and executing of an interactive application with the broadcasting of the television program with which the application is associated. In the present invention, an interactive application includes definitions of time periods specifying when such operations are to be performed. hi the present invention, interactive applications are only offered to viewers, started, and executed during the defined time periods for which such activity is defined as appropriate.
The first defined time period specifies the earliest time at which the option to execute the interactive application may be offered to the viewer, and the latest time at which the option to execute may be so offered. The second defined time period specifies the earliest and latest times at which execution of the interactive may be started. The third defined time period specifies the earliest and latest times at which the interactive application is allowed to execute. Thus, the three time periods specify when an interactive application may be offered to a viewer, started, and executed. A time period is, in effect, a window during which an interactive application execution related activity is allowed to occur.
A system in accordance with the present invention includes a number of broadcast receivers, a broadcaster that is the source of broadcast data including television programs, commercials, and interactive applications, and a broadcast server which maintains a database of interactive applications. The various interactive applications are associated with individual broadcasters, television programs, and commercials. Each interactive application contains at least one definition of a time period concerning the offering, start, or execution as previously described.
A broadcast signal containing an interactive application and broadcast data is received by any broadcast receiver tuned to the specific channel upon which the interactive application is broadcast. The broadcast receiver decodes the broadcast signal. The broadcast receiver determines if the present time is within the defined period of time during which the interactive application may be offered to the viewer. The broadcast receiver only offers a viewer the option of executing the interactive application within that defined time period. If the viewer elects to execute, the broadcast receiver determines if the present time is within the defined period of time during which the execution of an interactive application may be started. Only within that defined time period will the broadcast receiver begun execution of the interactive application. If the interactive application is still executing at the end of the defined time period, during which the interactive application is permitted to execute, the broadcast receiver retires the interactive application.